package UnOfficeDeTourisme;

/**
 * Interface definition : SGSites
 * 
 * @author OpenORB Compiler
 */
public class SGSitesPOATie extends SGSitesPOA
{

    //
    // Private reference to implementation object
    //
    private SGSitesOperations _tie;

    //
    // Private reference to POA
    //
    private org.omg.PortableServer.POA _poa;

    /**
     * Constructor
     */
    public SGSitesPOATie(SGSitesOperations tieObject)
    {
        _tie = tieObject;
    }

    /**
     * Constructor
     */
    public SGSitesPOATie(SGSitesOperations tieObject, org.omg.PortableServer.POA poa)
    {
        _tie = tieObject;
        _poa = poa;
    }

    /**
     * Get the delegate
     */
    public SGSitesOperations _delegate()
    {
        return _tie;
    }

    /**
     * Set the delegate
     */
    public void _delegate(SGSitesOperations delegate_)
    {
        _tie = delegate_;
    }

    /**
     * _default_POA method
     */
    public org.omg.PortableServer.POA _default_POA()
    {
        if (_poa != null)
            return _poa;
        else
            return super._default_POA();
    }

    /**
     * Operation ajouterVisite
     */
    public int ajouterVisite(int idSite, UnOfficeDeTourisme.Visite v)
    {
        return _tie.ajouterVisite( idSite,  v);
    }

    /**
     * Operation ajouterSite
     */
    public int ajouterSite(UnOfficeDeTourisme.Site s)
    {
        return _tie.ajouterSite( s);
    }

    /**
     * Operation ajouterTypeEntree
     */
    public int ajouterTypeEntree(int idVisite, float prix, String nomTE)
    {
        return _tie.ajouterTypeEntree( idVisite,  prix,  nomTE);
    }

    /**
     * Operation getVisites
     */
    public UnOfficeDeTourisme.Visite[] getVisites(int[] listeIdSites)
        throws UnOfficeDeTourisme.ListeVideException
    {
        return _tie.getVisites( listeIdSites);
    }

    /**
     * Operation getAllVisites
     */
    public UnOfficeDeTourisme.Visite[] getAllVisites()
        throws UnOfficeDeTourisme.ListeVideException
    {
        return _tie.getAllVisites();
    }

    /**
     * Operation calculerStatistiques
     */
    public UnOfficeDeTourisme.statistiques calculerStatistiques(UnOfficeDeTourisme.Site[] sites)
    {
        return _tie.calculerStatistiques( sites);
    }

    /**
     * Operation getPosProches
     */
    public UnOfficeDeTourisme.Visite[] getPosProches(UnOfficeDeTourisme.GPS geo)
        throws UnOfficeDeTourisme.ListeVideException
    {
        return _tie.getPosProches( geo);
    }

    /**
     * Operation majSite
     */
    public void majSite(int idSite, UnOfficeDeTourisme.datecut ouverture, UnOfficeDeTourisme.datecut fermeture)
    {
        _tie.majSite( idSite,  ouverture,  fermeture);
    }

    /**
     * Operation getTypeEntrees
     */
    public UnOfficeDeTourisme.TypeEntree[] getTypeEntrees(int[] listeVisites)
        throws UnOfficeDeTourisme.ListeVideException
    {
        return _tie.getTypeEntrees( listeVisites);
    }

    /**
     * Operation listeDesSites
     */
    public UnOfficeDeTourisme.Site[] listeDesSites()
        throws UnOfficeDeTourisme.ListeVideException
    {
        return _tie.listeDesSites();
    }

    /**
     * Operation consulterVisite
     */
    public UnOfficeDeTourisme.Visite consulterVisite(int idVisite)
    {
        return _tie.consulterVisite( idVisite);
    }

}
